/*
 * Copyright 2020-2030 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
*/

package com.gitee.minimalismstyle.fresh.flowable.api.feign.model

import java.io.Serializable

/**
 * BpmnModel
 * @author maoxiaodong
 */
class BpmnModel : Serializable {

    /**
     *
     * example:
     */
    var definitionsAttributes: List<ExtensionAttribute>? = null

    /**
     *
     * example:
     */
    var processes: List<String>? = null

    /**
     *
     * example:
     */
    var locationMap: GraphicInfo? = null

    /**
     *
     * example:
     */
    var labelLocationMap: GraphicInfo? = null

    /**
     *
     * example:
     */
    var flowLocationMap: List<GraphicInfo>? = null

    /**
     *
     * example:
     */
    var edgeMap: BpmnDiEdge? = null

    /**
     *
     * example:
     */
    var signals: List<Signal>? = null

    /**
     *
     * example:
     */
    var pools: List<Pool>? = null

    /**
     *
     * example:
     */
    var imports: List<Import>? = null

    /**
     *
     * example:
     */
    var interfaces: List<Interface>? = null

    /**
     *
     * example:
     */
    var globalArtifacts: List<Artifact>? = null

    /**
     *
     * example:
     */
    var resources: List<Resource>? = null

    /**
     *
     * example:
     */
    var targetNamespace: String? = null

    /**
     *
     * example:
     */
    var sourceSystemId: String? = null

    /**
     *
     * example:
     */
    var userTaskFormTypes: List<String>? = null

    /**
     *
     * example:
     */
    var startEventFormTypes: List<String>? = null

    /**
     *
     * example:
     */
    var exporter: String? = null

    /**
     *
     * example:
     */
    var exporterVersion: String? = null

    /**
     *
     * example:
     */
    var mainProcess: Process? = null

    /**
     *
     * example:
     */
    var messageFlows: MessageFlow? = null

    /**
     *
     * example:
     */
    var messages: List<Message>? = null

    /**
     *
     * example:
     */
    var errors: String? = null

    /**
     *
     * example:
     */
    var escalations: List<Escalation>? = null

    /**
     *
     * example:
     */
    var itemDefinitions: ItemDefinition? = null

    /**
     *
     * example:
     */
    var dataStores: DataStore? = null

    /**
     *
     * example:
     */
    var namespaces: String? = null
}